Skip to content

fix: make workflow blocker hints actionable - #15

Merged
chtnnh merged 2 commits into
mainfrom
fix/pipeline-blocker-messages
Aug 24, 2026
Merged

fix: make workflow blocker hints actionable#15
chtnnh merged 2 commits into
mainfrom
fix/pipeline-blocker-messages

Conversation

@chtnnh

@chtnnh chtnnh commented Aug 24, 2026

Copy link
Copy Markdown
Owner

Closes #4

What changed

Audits every recovery hint emitted by the pipeline and check path, replacing diagnostic-only or pseudo-shell suggestions with actions that move the workflow forward.

  • Changed stale pushed-HEAD recovery from know-code status to know-code taught.
  • Added know-code quiz init to create a hash-bound, quota-correct quiz scaffold.
  • Added know-code grade propose --write to create a deliberately failing, answer-bound proposal template without forging an approval.
  • Replaced broad git add -A guidance with tracked-only git add -u.
  • Made the forced-range range begin blocker reachable by removing its contradictory scope condition.
  • Replaced remaining changed-hash diagnostic fallbacks with recovery actions.

Verification

  • Added end-to-end recovery tests for trailer denial and a pushed HEAD that changed after pass.
  • Added a full pipeline recovery-command matrix covering every emitted command: reset, attest-init, range begin, taught, quiz init, ask, proposal writing, grade review, pass, and tracked staging.
  • npm run lint
  • npm run build
  • npm test
  • npm run know-code -- check --push

Replace diagnostic and pseudo-shell recovery hints with commands that advance
the gate, including quiz and grading scaffolds that preserve human approval
boundaries. Cover every emitted pipeline recovery command and restore the
forced-range blocker that was unreachable behind a contradictory scope guard.

Know-Code-Verified: b33616afd663a9604ad07c67150c4adc3c025190a0289283b7d17297d411359c
@cursor

cursor Bot commented Aug 24, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
Touches gate/check recovery paths and writes quiz/grade-proposal files, so wrong hints could send users down the wrong workflow. Scaffolds are failing/placeholder by design, not auto-approvals.

Overview
Pipeline and check denials now point at commands that actually advance the workflow, instead of know-code status or pseudo-shell “write this file” hints.

Adds know-code quiz init (quota-correct quiz scaffold) and know-code grade propose --write (deliberately failing, answer-bound proposal template). Missing-quiz and missing-proposal blockers use those commands. Stale pushed HEAD and changed-hash denials recover via know-code taught or know-code pass. Unstaged tracked edits suggest git add -u rather than git add -A. Range-mode range begin is no longer gated on a contradictory scope check.

Tests cover the full recovery-command matrix plus trailer and post-pass HEAD-change denials.

Reviewed by Cursor Bugbot for commit 0c59532. Bugbot is set up for automated code reviews on this repo. Configure here.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 34f660e. Configure here.

Comment thread packages/cli/src/pipeline.ts Outdated
@chtnnh chtnnh self-assigned this Aug 24, 2026
Know-Code-Verified: 87dd89494bb15947e521bbfbcfc9c8315b6aa2920ef6eaf1982caa11f4ac3d82
@chtnnh
chtnnh merged commit 4c55fde into main Aug 24, 2026
3 checks passed
@chtnnh
chtnnh deleted the fix/pipeline-blocker-messages branch August 24, 2026 13:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Audit pipeline blocker messages: suggested commands must actually resolve the blocker

1 participant